/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package controller;
import java.util.List;
import javax.persistence.NoResultException;
import javax.persistence.PersistenceException;
import model.encomendaproduto.EncomendaProduto;
import model.fachada.Fachada;
import model.excecoes.ErroDAOException;
import model.excecoes.ErroNegocioException;
import model.interfaces.IControllerEncomendaProduto;
/**
 *
 * @author Marcos
 */
public class ControllerEncomendaProduto implements IControllerEncomendaProduto{
    
    
    private Fachada fachada = null;
    public ControllerEncomendaProduto(){
        fachada = Fachada.getInstanciaSingleton();
    }

    @Override
    public void registrarEncomendaProduto(EncomendaProduto encomenda) throws ErroDAOException, ErroNegocioException, PersistenceException, NoResultException {
        fachada.registrarEncomendaProduto(encomenda);
    }

    @Override
    public void alterarEncomendaProduto(EncomendaProduto encomenda) throws ErroDAOException, ErroNegocioException, PersistenceException, NoResultException {
        fachada.alterarEncomendaProduto(encomenda);
    }

    @Override
    public void excluirEncomendaProduto(EncomendaProduto encomenda) throws ErroDAOException, ErroNegocioException, PersistenceException, NoResultException {
        fachada.excluirEncomendaProduto(encomenda);
    }

    @Override
    public List<EncomendaProduto> listarEncomenda(String consulta, String campo) throws ErroDAOException, ErroNegocioException, PersistenceException, NoResultException {
        return fachada.listarEncomenda(consulta, campo);
    }

    @Override
    public int identificarCodigoProduto(String descricao, String marca) throws ErroDAOException, ErroNegocioException, PersistenceException, NoResultException {
        return fachada.identificarCodigoProduto(descricao, marca);
    }
    
}
